package org.demo.pattern.vistor;

import java.util.ArrayList;
import java.util.List;

/**
 * 访问者模式
 * 处理对象放入 Collection 中再取出来时，类型消失需要用 if else 判断的问题，
 * 具体做法是使这些对象都实现一个共同的接口 Visitable
 * @author  
 * @date    2011-5-17
 * @file    org.demo.pattern.vistor.VisitorTest.java
 */
public class VisitorTest {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		List<Visitable> list = new ArrayList<Visitable>();
		list.add(new StringElement("hello"));
		list.add(new FloatElement(3.14f));
		
		Visitor visitor = new ConcreteVisitor();
		visitor.visitList(list);
	}

}
